/*
Author: Maciej Oczko
Date: December 2011
*/

#ifndef TEXTURE_H
#define TEXTURE_H

#include "Resource.h"

class Texture : public Resource
{
protected:
	// does texture pointer point to a texture or is it release
	bool m_IsLoaded;
	// loads texture from file
	virtual bool Load() = 0;
public:
	Texture();
	virtual ~Texture() {}

	virtual bool Reload() = 0;
	// get size of texture in memory
	virtual size_t GetSize() = 0;
	// return false if is texture loaded, otherwise false
	inline bool IsEmpty() { return !m_IsLoaded; } 
};

#endif